starstarstarstarstar_half
This is yet one more introductory course on quantum computing. Here I concentrate more on how the mathematical model of quantum computing grows out from physics and experiment, while omitting most of the formulas (when possible) and rigorous proofs. On the first week I try to explain in simple language (I hope) where the computational power of a quantum computer comes from, and why it is so hard to implement it. To understand the materials of this week you don't need math above the school level. Second and third weeks are about the mathematical model of quantum computing, and how it is justified experimentally. Some more math is required here. I introduce the notion of a linear vector space, discuss some simple differential equations and use complex numbers. The forth week is dedicated to the mathematical language of quantum mechanics. You might need this if you want to dig deeper into subject, however I touch only the tip of the iceberg here. On the week 5 I finally introduce some simple quantum algorithms for cryptography and teleportation.
    starstarstarstarstar_half
    Solve real world problems with Java using multiple classes. Learn how to create programming solutions that scale using Java interfaces. Recognize that software engineering is more than writing code - it also involves logical thinking and design. By the end of this course you will have written a program that analyzes and sorts earthquake data, and developed a predictive text generator. After completing this course, you will be able to: 1. Use sorting appropriately in solving problems; 2. Develop classes that implement the Comparable interface; 3. Use timing data to analyze empirical performance; 4. Break problems into multiple classes, each with their own methods; 5. Determine if a class from the Java API can be used in solving a particular problem; 6. Implement programming solutions using multiple approaches and recognize tradeoffs; 7. Use object-oriented concepts including interfaces and abstract classes when developing programs; 8. Appropriately hide implementation decisions so they are not visible in public methods; and 9. Recognize the limitations of algorithms and Java programs in solving problems. 10. Recognize standard Java classes and idioms including exception-handling, static methods, java.net, and java.io packages.
      starstarstarstarstar_half
      This course teaches learners how to write a program in the C++ language, including how to set up a development environment for writing and debugging C++ code and how to implement data structures as C++ classes. It is the first course in the Accelerated CS Fundamentals specialization, and subsequent courses in this specialization will be using C++ as the language for implementing the data structures covered in class.
        starstarstarstarstar_half
        Welcome to State Estimation and Localization for Self-Driving Cars, the second course in University of Toronto’s Self-Driving Cars Specialization. We recommend you take the first course in the Specialization prior to taking this course. This course will introduce you to the different sensors and how we can use them for state estimation and localization in a self-driving car. By the end of this course, you will be able to: - Understand the key methods for parameter and state estimation used for autonomous driving, such as the method of least-squares - Develop a model for typical vehicle localization sensors, including GPS and IMUs - Apply extended and unscented Kalman Filters to a vehicle state estimation problem - Understand LIDAR scan matching and the Iterative Closest Point algorithm - Apply these tools to fuse multiple sensor streams into a single state estimate for a self-driving car For the final project in this course, you will implement the Error-State Extended Kalman Filter (ES-EKF) to localize a vehicle using data from the CARLA simulator. This is an advanced course, intended for learners with a background in mechanical engineering, computer and electrical engineering, or robotics. To succeed in this course, you should have programming experience in Python 3.0, familiarity with Linear Algebra (matrices, vectors, matrix multiplication, rank, Eigenvalues and vectors and inverses), Statistics (Gaussian probability distributions), Calculus and Physics (forces, moments, inertia, Newton's Laws).
          starstarstarstarstar_half
          Welcome to Lighting, Reflection, and Post-Processing Effects, the second course in the Unity Certified 3D Artist Specialization from Unity Technologies. The courses in this series will help you prepare for the Unity Certified 3D Artist exam, the professional certification for entry- to mid-level Unity artists. 3D artists are critical to the Unity development pipeline. They are a bridge between the programmers writing the application code and the designers or art directors who define the application’s aesthetics and style. In these courses, you will be challenged to complete realistic art implementation tasks in Unity that are aligned to the topics covered on the exam. In this second course, you will continue work on the Kitchen Configurator application - an app that lets users view a realistic rendering of a kitchen and swap out objects and materials to customize the design. The scene will really start to come to life as you add lighting effects including ambient lighting from a custom skybox, simulated sunlight, interior lights, and realistic reflections. Finally, you’ll use Unity’s Post-Processing Stack to add even more polish to the rendered scene. By the end of the course, you’ll have a scene ready for the next stage: adding interactions through scripts. This is an intermediate course, intended for people who are ready for their first paying roles as Unity 3D artists, or enthusiasts who would like to verify their skills against a professional standard. To succeed, you should have at least 1-2 years of experience implementing 3D art in Unity. You should be proficient at importing assets into Unity from Digital Content Creation (DCC) tools, prototyping scenes, working with lighting, and adding particles and effects. You should also have a basic understanding of 2D asset management, animation, and working with scripts. You should have experience in the full product development lifecycle, and understand multi-platform development, including for XR (AR and VR) platforms.
            starstarstarstarstar_half
            In this course you will learn about audio signal processing methodologies that are specific for music and of use in real applications. We focus on the spectral processing techniques of relevance for the description and transformation of sounds, developing the basic theoretical and practical knowledge with which to analyze, synthesize, transform and describe audio signals in the context of music applications. The course is based on open software and content. The demonstrations and programming exercises are done using Python under Ubuntu, and the references and materials for the course come from open online repositories. We are also distributing with open licenses the software and materials developed for the course.
              starstarstarstarstar_border
              Whether you are a software developer, architect, project manager or just someone who codes for fun; knowing what to write is just as hard as knowing how to write it. ' Software requirements gathering ' is the process of capturing the objectives, goals and wishes of the customer upfront and early-on in the Software Development Life Cycle (SDLC). This course is accompanied by several templates and document files, that you can use as a guideline during your next requirements gathering project. There is a feasibility study template, a software specification template, a terminology guide and a couple more. This course will get you ' asking the right questions ' early in the process, saving you time, money and effort. You will learn how to ' manage the requirements process ' from start to finish. How to differentiate between ' Functional and Non-functional requirements '. How to ' capture and record requirements '. Plus, you will get an insight to how one system is used throughout an organization. This course will guide you through the entire range of ' Scoping Documents ', ' Technical Specifications ', ' Feasibility Studies ' and ' Requirements Gathering '. Your time is precious and that matters to me, this course has been arranged into small lectures that you can consume when you have a spare few minutes. They follow-on from each other, making the entire course watchable in one sitting. you can be sure that the project you embark on is the same as the project you deliver. On time and on budget. Capturing Software Requirements, Meeting Deliverables, Exceeding Expectations and Documenting the whole process can take years to learn, this stuff is not taught in colleges, it is learned in the trenches. So save yourself time, get the insider information on the topics that matter. By the end of the course, you will have amassed a large number of key takeaways and several useful template files that together will take your software development skills to the next level. This course is for life, meaning you can learn whenever you have the time. You have access to the discussions area, where I will personally answer any questions you have on this course. This course is also backed by a 30 day money back guarantee. If you need a deeper understanding of the software development life cycle. Are about to begin work on a new software project or embark on a prospective customer collaboration? this course will guide you through the process. I look forwards to seeing you on the inside. Kind Regards, Robin.
                starstarstarstarstar_half
                This course will show how one can treat the Internet as a source of data. We will scrape, parse, and read web data as well as access data using web APIs. We will work with HTML, XML, and JSON data formats in Python. This course will cover Chapters 11-13 of the textbook “Python for Everybody”. To succeed in this course, you should be familiar with the material covered in Chapters 1-10 of the textbook and the first two courses in this specialization. These topics include variables and expressions, conditional execution (loops, branching, and try/except), functions, Python data structures (strings, lists, dictionaries, and tuples), and manipulating files. This course covers Python 3.
                  starstarstarstarstar_border
                  This course provides an introduction to programming and the Python language. Students are introduced to core programming concepts like data structures, conditionals, loops, variables, and functions. This course includes an overview of the various tools available for writing and running Python, and gets students coding quickly. It also provides hands-on coding exercises using commonly used data structures, writing custom functions, and reading and writing to files. This course may be more robust than some other introductory python courses, as it delves deeper into certain essential programming topics.
                    starstarstarstarstar_half
                    Bringing a machine learning model into the real world involves a lot more than just modeling. This Specialization will teach you how to navigate various deployment scenarios and use data more effectively to train your model. In this first course, you’ll train and run machine learning models in any browser using TensorFlow.js. You’ll learn techniques for handling data in the browser, and at the end you’ll build a computer vision project that recognizes and classifies objects from a webcam. This Specialization builds upon our TensorFlow in Practice Specialization. If you are new to TensorFlow, we recommend that you take the TensorFlow in Practice Specialization first. To develop a deeper, foundational understanding of how neural networks work, we recommend that you take the Deep Learning Specialization.